#include<stdio.h>
const int maxn=100;
int u(int m,int n)
{
	if(m<=0||n<=0)  
		return 0;
	int dp[maxn][maxn];
	for(int i=0;i<m;i++){
		dp[i][0]=1;
	}
	for(int i=1;i<m;i++){
		dp[0][i]=1;
	}
	for(int i=1;i<m;i++){
		for(int j=0;j<n;j++){
			dp[i][j]=dp[i-1][j]+dp[i][j-1];
		}
	}
	return dp[m-1][n-1];
}
int main()
{
	int m,n;
	scanf("%d%d",&m,&n);
	printf("%d",u(m,n));
	return 0;
}
